In draw_fringe_bitmap_1 don't draw fringe if it's outside the window (Bug#16649).
authormartin rudalics <rudalics@gmx.at>
Wed, 5 Feb 2014 10:46:44 +0000 (11:46 +0100)
committermartin rudalics <rudalics@gmx.at>
Wed, 5 Feb 2014 10:46:44 +0000 (11:46 +0100)
* fringe.c (draw_fringe_bitmap_1): Don't draw a fringe if it's
outside the window (Bug#16649).

src/ChangeLog
src/fringe.c

index cda04a5a24f7638f495c7668d59be727f44d36f3..3ab9304fcec0d42ddefc2d24f018d6085a08b530 100644 (file)
@@ -5,6 +5,9 @@
 
 2014-02-05  Martin Rudalics  <rudalics@gmx.at>
 
+       * fringe.c (draw_fringe_bitmap_1): Don't draw a fringe if it's
+       outside the window (Bug#16649).
+
        * xdisp.c (note_mouse_highlight): When entering a margin area show
        a non-text cursor (Bug#16647).
 
index eb2faa448f7b99c813c366f932f074e2b84d18db..6325de4128ecedea90dd8c21b946c23661e00635 100644 (file)
@@ -695,7 +695,9 @@ draw_fringe_bitmap_1 (struct window *w, struct glyph_row *row, int left_p, int o
        }
     }
 
-  FRAME_RIF (f)->draw_fringe_bitmap (w, row, &p);
+  if (p.x >= WINDOW_BOX_LEFT_EDGE_X (w)
+      && (p.x + p.wd) <= WINDOW_BOX_LEFT_EDGE_X (w) + WINDOW_PIXEL_WIDTH (w))
+    FRAME_RIF (f)->draw_fringe_bitmap (w, row, &p);
 }
 
 static int